package pcsr.hwVirtualization;

/**
 * The class <code>Sensor</code> implements this interface in order to define the contract to be used when subscribing to a PCSR managed sensor.
 * 
 * @author Paulo Fagundes
 *
 * @see Sensor
 * @see ISensorObserver
 */
public interface ISensorObservable {

	/**
	 * Subscribe notifications about sensor changes.
	 * @param observer The subscriber of notifications.
	 * @see ISensorObserver
	 */
	void ObserveSensor( final ISensorObserver observer );
	
	/**
	 * Cancel subscribed notifications about sensor changes.
	 * @param observer The subscriber that is canceling the notifications.
	 * @see ISensorObserver
	 */
	void UnObserveSensor( final ISensorObserver observer );
	
	
}
